/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controlador;

import comu.Configuracio;
import controlador.autogenerats.UnitatsMesuraJpaController;
import entity.Camp;
import entity.UnitatsMesura;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.Persistence;
import javax.persistence.Query;

/**
 *
 * @author David
 */
public class UnitatsMesuraControlador extends UnitatsMesuraJpaController{

    public UnitatsMesuraControlador() {
        super(Persistence.createEntityManagerFactory(Configuracio.PERSISTANCE_UNIT));
    }

    public List<UnitatsMesura> findUnitatsMesuraEntitiesForPlantar() {
        EntityManager em = getEntityManager();
        try{

        Query q = em.createNativeQuery("select * from unitats_mesura where plantar like true", UnitatsMesura.class);
        Iterator it = q.getResultList().iterator();
        ArrayList<UnitatsMesura> llista = new ArrayList<UnitatsMesura>();
        while(it.hasNext()){
            llista.add((UnitatsMesura) it.next());
        }
        return llista;
        } finally {
            em.close();
        }
    }
    
    public List findUnitatsMesuraEntitiesForCollir() {
        EntityManager em = getEntityManager();
        try{

        Query q = em.createNativeQuery("select * from unitats_mesura where collir like true", UnitatsMesura.class);
        Iterator it = q.getResultList().iterator();
        ArrayList<UnitatsMesura> llista = new ArrayList<UnitatsMesura>();
        while(it.hasNext()){
            llista.add((UnitatsMesura) it.next());
        }
        return llista;
        } finally {
            em.close();
        }
    }

    public List findUnitatsMesuraEntitiesForAbonoPaquet() {
        EntityManager em = getEntityManager();
        try{

        Query q = em.createNativeQuery("select * from unitats_mesura where abono_paquet like true", UnitatsMesura.class);
        Iterator it = q.getResultList().iterator();
        ArrayList<UnitatsMesura> llista = new ArrayList<UnitatsMesura>();
        while(it.hasNext()){
            llista.add((UnitatsMesura) it.next());
        }
        return llista;
        } finally {
            em.close();
        }
    }
    public List findUnitatsMesuraEntitiesForAbonoQuantitat() {
        EntityManager em = getEntityManager();
        try{

        Query q = em.createNativeQuery("select * from unitats_mesura where abono_quantitat like true", UnitatsMesura.class);
        Iterator it = q.getResultList().iterator();
        ArrayList<UnitatsMesura> llista = new ArrayList<UnitatsMesura>();
        while(it.hasNext()){
            llista.add((UnitatsMesura) it.next());
        }
        return llista;
        } finally {
            em.close();
        }
    }
    public List findUnitatsMesuraEntitiesForFitosanDisolucio() {
        EntityManager em = getEntityManager();
        try{

        Query q = em.createNativeQuery("select * from unitats_mesura where fitosan_disolucio like true", UnitatsMesura.class);
        Iterator it = q.getResultList().iterator();
        ArrayList<UnitatsMesura> llista = new ArrayList<UnitatsMesura>();
        while(it.hasNext()){
            llista.add((UnitatsMesura) it.next());
        }
        return llista;
        } finally {
            em.close();
        }
    }
    public List findUnitatsMesuraEntitiesForFitosanDosis() {
        EntityManager em = getEntityManager();
        try{

        Query q = em.createNativeQuery("select * from unitats_mesura where fitosan_dosis like true", UnitatsMesura.class);
        Iterator it = q.getResultList().iterator();
        ArrayList<UnitatsMesura> llista = new ArrayList<UnitatsMesura>();
        while(it.hasNext()){
            llista.add((UnitatsMesura) it.next());
        }
        return llista;
        } finally {
            em.close();
        }
    }
    
    
}
